// 存放接口
import request from '@/utils/request.js'
import store from '@/store'

// 接口的声明和使用
// 1、找到页面的需要对应哪个接口
// 2、问后端的同事找后端或者看接口文档如果没有接口文档自己m0ck(模拟接口)
// 3、看接口接口地址接口的请求方式接口携带的参数接口返回的数据
// 4、在api中封装接口返回一个request方法在方法中配置接口的。接口地址接口的请求方式接口携带的参数（有什么配置什么，没有可以省略不写）
// 5、在合适的位置调用接可

// 封装所有频道接口请求的方法
export const allChannelListAPI = () => {
  return request({
    url: '/v1_0/channels'
  })
}

// 用户登入接口
export const loginApi = ({ mobile, code }) => {
  return request({
    method: 'POST',
    url: '/v1_0/authorizations',
    data: {
      mobile, code
    }
  })
}

// 用户频道 请求接口
export const UserChannelListApi = () => {
  return request({
    url: '/v1_0/user/channels'
    /* headers: {
      Authorization: 'Bearer ' + store.state.token
    } */
  })
}

// 获取推荐新闻列表
export const articlesListAPI = ({ channelId, timestamp }) => {
  return request({
    url: '/v1_0/articles',
    method: 'GET',
    headers: {
      Authorization: 'Bearer ' + store.state.token
    },
    params: {
      channel_id: channelId,
      timestamp: timestamp || new Date().getTime() // 判断是时
    }
  })
}
// 文章举报
export const articleReportsAPI = ({ target, type, remark }) => {
  return request({
    url: '/v1_0/article/reports',
    method: 'POST',
    data: {
      target,
      type,
      remark
    }
    /*  headers: {
      Authorization: 'Bearer ' + store.state.token
    } */
  })
}
// 不感兴趣接口
export const articleDislikeAPI = ({ target }) => {
  return request({
    url: '/v1_0/article/dislikes',
    method: 'POST',
    data: {
      target
    }
    /*  headers: {
      Authorization: 'Bearer ' + store.state.token
    } */
  })
}

// 设置用户的频道（重置式）
export const updateChannelAPI = ({ channels }) => {
  return request({
    url: '/v1_0/user/channels',
    method: 'PUT',
    data: { channels: channels }
  })
}

// 搜索 - 联想菜单
export const suggestListAPI = ({ q }) => {
  return request({
    url: '/v1_0/suggestion',
    params: {
      q
    }

  })
}
